
// <copyright file="ProcessInfo.cs" company="Subhadra Software Solutions">
//   
// </copyright>
// <summary>
//   The process info.
// </summary>

namespace SubhadraSolutions.Sharp.Utils.Diagnostics.Performance.Dtos
{
    using System;

    /// <summary>
    /// The process info.
    /// </summary>
    [Serializable]
    public class ProcessInfo
    {
        #region Constructors and Finalizers

        /// <summary>
        /// Initializes a new instance of the <see cref="ProcessInfo"/> class.
        /// </summary>
        public ProcessInfo()
        {
            this.ProcessId = ProcessHelper.CurrentProcess.Id;
            this.MachineName = GlobalSettings.Instance.MachineName;
            this.ApplicationName = GlobalSettings.Instance.ApplicationName;
            this.Environment = GlobalSettings.Instance.Environment;
        }

        #endregion Constructors and Finalizers

        #region Public Properties

        /// <summary>
        /// Gets or sets the application name.
        /// </summary>
        public string ApplicationName { get; set; }

        /// <summary>
        /// Gets or sets the environment.
        /// </summary>
        public string Environment { get; set; }

        /// <summary>
        /// Gets or sets the machine name.
        /// </summary>
        public string MachineName { get; set; }

        /// <summary>
        /// Gets or sets the process id.
        /// </summary>
        public int ProcessId { get; set; }

        #endregion Public Properties
    }
}
